Generally, electronic device manufacturers strive to produce a rich interface for users. Conventional devices use visual and auditory cues to provide feedback to a user, while in some interface devices, kinesthetic feedback, such as active and resistive force feedback, and/or tactile feedback, such as vibration, texture, and heat, is also provided to the user, more generally known collectively as “haptic feedback” or “haptic effects”. Haptic feedback can provide cues that enhance and simplify the user interface. Specifically, vibration effects or vibrotactile haptic effects may be useful in providing cues to users of electronic devices to alert the user to specific events, or provide realistic feedback to create greater sensory immersion within a simulated or virtual environment.
Generally, a haptic effect developer can author a haptic effect for a device, and the device can be configured to output the haptic effect. Different types of hardware may be capable of generating different types of haptic effects due to different hardware characteristics. For example, different types of actuators such as eccentric rotating mass motor actuators, linear resonant actuators, and piezoelectric actuators are capable of generating different types of haptic effects due to different electromechanical characteristics of the different actuators.
Generally, some devices may implement an “ON/OFF” vibrate control such as the “Android” vibrate API from Google Corp. to control actuators. However, such devices may not have fine-grain control over the drive values and durations of the actuators. Therefore, there is a need for providing fine-grain control over the drive values and durations of the actuators on devices that rely on an “ON/OFF” vibrate control.